
// async await es7
// 之前的异步同步化方案 回调
// promise  是es6提供的异步同步化方案
// 为什么还要提供新的方案 then 有不完美的地方

function f1(cb){
    console.log('f1');
    setTimeout(function(){
        cb();
    },1000)
}
function f2(cb){
    console.log('f2');
    setTimeout(function(){
        cb();
    },2000)
}

function f3(cb){
    console.log('f3');
    setTimeout(function(){
        cb();
    },3000)
}
function f4(){
    console.log('f4');
}
// 回调 异步任务同步化
// 有回调地狱 异步任务队列（长） 保证顺序
// 可读性不好
f1(function(){
    f2(function(){
        f3(f4)
    })
});
